package middleware

import (
    "github.com/gogf/gf/frame/g"
    "github.com/gogf/gf/net/ghttp"
    "webserver/library/response"
)

// 允许接口跨域请求
func CORS(r *ghttp.Request) {
	r.Response.CORSDefault()
	r.Middleware.Next()
}

// 后置中间件，用于捕捉错误，并以JSON的方式返回
func ErrorHandler(r *ghttp.Request) {
    r.Middleware.Next()
    if err := r.GetError(); err != nil {
        // 记录到自定义错误日志文件
        g.Log("exception").Error(err)
        //返回固定的友好信息
        r.Response.ClearBuffer()
        //r.Response.Writeln("服务器居然开小差了，请稍后再试吧！")
        response.JsonExit(r, 1, err.Error())
    }
}
